home *** CD-ROM | disk | FTP | other *** search
Wrap
package com.ibm.db; import com.ibm.db.base.DatabaseConnection; import com.ibm.db.base.DatabaseQuerySpec; import com.ibm.db.base.DatabaseResultTable; import java.beans.PropertyChangeListener; import java.beans.PropertyChangeSupport; import java.sql.SQLException; public class SQLStatement extends Statement { protected int fieldNumAffectedRows; private static final String copyright = "Licensed Materials -- Property of IBM\n(c) Copyright International Business Machines Corporation, 1998, 2000.\nAll Rights Reserved.\nUS Government Users Restricted Rights -\nUse, duplication or disclosure restricted by\nGSA ADP Schedule Contract with IBM Corp."; public synchronized void addPropertyChangeListener(PropertyChangeListener var1) { this.getPropertyChange().addPropertyChangeListener(var1); } public void cancelExecution() throws DataException { if (super.fieldConnection == null) { String var4 = Utilities.logMessage(IBMDBMessages.noConnection); throw new DataException(var4, 206); } else if (!super.executingSQL) { String var1 = Utilities.logMessage(IBMDBMessages.notExecuting); throw new DataException(var1, 246); } else { try { super.rt.cancel(); } catch (SQLException var3) { Statement.handleSQLException(var3); } } } public void execute() throws DataException { Object var3 = null; ((Statement)this).fireAboutToExecute(new DataEvent(this)); if (((Statement)this).connect()) { DatabaseConnection var2 = super.fieldConnection.getConnection(); Integer var4 = new Integer(this.fieldNumAffectedRows); try { DatabaseQuerySpec var26 = new DatabaseQuerySpec(((Statement)this).getMetaData().getDbQuerySpec()); String var5 = var26.getStatement(); if (var5.indexOf(58) != -1) { var26.setStatement(Statement.replaceHostVars(var5)); } super.rt = new DatabaseResultTable(var2, var26, 1003, true); super.rt.setTimeout(super.fieldTimeout); super.executingSQL = true; try { if (((Statement)this).getParameters() == null) { super.rt.executeUpdate(); } else { super.rt.executeUpdate(((Statement)this).getParameters()); } } finally { super.executingSQL = false; } super.fieldExecuted = true; this.fieldNumAffectedRows = super.rt.getUpdateCount(); this.firePropertyChange("numAffectedRows", var4, new Integer(this.fieldNumAffectedRows)); try { super.rt.closeStatement(); } catch (SQLException var20) { } finally { super.rt = null; } } catch (SQLException var23) { super.executingSQL = false; String var1 = Utilities.logSQLException(var23); throw new DataException(var1, var23); } catch (com.ibm.db.base.DataException var24) { super.executingSQL = false; Utilities.logBaseException(var24); throw new DataException(((Throwable)var24).getMessage(), var24.getErrorCode()); } catch (CloneNotSupportedException var25) { } ((Statement)this).fireExecuted(new DataEvent(this)); } } protected void firePropertyChange(String var1, Object var2, Object var3) { this.getPropertyChange().firePropertyChange(var1, var2, var3); } public int getNumAffectedRows() { return this.fieldNumAffectedRows; } protected PropertyChangeSupport getPropertyChange() { if (super.propertyChange == null) { super.propertyChange = new PropertyChangeSupport(this); } return super.propertyChange; } public synchronized void removePropertyChangeListener(PropertyChangeListener var1) { this.getPropertyChange().removePropertyChangeListener(var1); } }